#include "IFuncParam.h"

IFuncParam::IFuncParam(int (*f)(int, int), int param)
{
    this->ponteiro_funcao = f;
    this->setParam(1);
    this->setParam(param);
}

int IFuncParam::getParam()
{
    return(this->param);
}

void IFuncParam::setParam(int p)
{
    if (p != 0) this->param = p;
}

int IFuncParam::runFunc(int x)
{
    if(this->ponteiro_funcao == NULL)
    {
        cout<<"A funcao nao foi especificada!"<<endl;
        return(-1);
    }
    return(this->ponteiro_funcao(x,this->getParam()));
}
